perm filename LOGIN.BH[UP,DOC]3 blob sn#121267 filedate 1974-09-22 generic text, type T, neo UTF8
The LOGIN command is used  to begin a session of using  the computer.
It runs the LOGIN  program, which provides several  optional services
as well as setting up the necessary system tables for your job.

The LOGIN  command may be  abbreviated L.  It  takes one  argument, a
project-programmer name.  Different  characters used between  the two
parts of the name are used for different options:

  PRJ,PRG  types all system messages and processes OPTION.TXT
           (see below)
  PRJ/PRG  types system messages new since last login, processes
           OPTION.TXT
  PRJ.PRG  types no messages, ignores OPTION.TXT; for fast login
  PRJ%PRG  sets new password, as explained below, then acts
           like PRJ,PRG

System messages are notices for all users, sent by the MAIL * command
and stored in the  file NOTICE.TXT[2,2].  There may also  be messages
addressed to a particular project, to a particular programmer,  or to
a PPN.  Mail  to your project is  treated like system  messages.  The
handling of programmer or PPN mail is explained below.

It  is possible  to  set  a password  and  file protection  codes  to
restrict access to a particular PPN.  If the PPN you specify to LOGIN
has  a  password,  LOGIN types  "Password="  and you  must  type  the
correct password  to log in.   Echoing of input characters  is turned
off  so the  password does not  print.  Passwords  may be  one to six
letters  or  digits followed  by  RETURN.    To  protect  files  from
unauthorized access, there is  a protection code associated with each
file.  The  code specifies  the access allowed  to the  file for  its
owner (i.e., a user logged in under the  file's PPN), for other users
who are using local  terminals at the AI Lab, and for other users who
are logged  in remotely  (from the  ARPA  network, dial-up  telephone
lines, or campus  terminals).

 You can  set the protection code for  a file using the  COPY program
(see Appendix 2).  However, you must use the LOGIN program to set the
protection code  of your  file  directory itself,   and  the  default
protection  code which  is  assigned  to new  files  created in  your
directory  if the program writing  the file does  not specify a value
explicitly.  If  you use % as  the delimiter between the  project and
programmer names when you log in, LOGIN will give you the opportunity
to change  your  password, the  file  directory protection,  and  the
default protection for new  files.  The protection codes  are entered
as three-digit octal numbers,  with the following meanings:

Bit	Meaning in directory protection code

400	password is for remote logins only (used by LOGIN)
200	unused
100	owner may not write files
040	local users may not change protection of files
020	local users may not read directory or any files
010	local users may not write any files
004	remote users may not change protection of files
002	remote users may not read directory or any files
001	remote users may not write any files

Bit	Meaning in file protection code

400	don't dump this file (used by DART)
200	delete protect (used by COPY)
100	owner may not overwrite this file
040	local users may not change protection of this file
020	local users may not read this file
010	local users may not overwrite this file
004	remote users may not change protection of this file
002	remote users may not read this file
001	remote users may not overwrite this file

If the 400 bit is on in the protection code for a file directory, the
password  associated with that  area is used  only for  logins from a
remote site; no  password will be  required for  local login on  that
PPN. Remote  login is  not allowed  on a  PPN which  does not  have a
password; thus,  if you want to be able to log in remotely but do not
want to have to type a password for local login, you  can set the 400
bit in your directory's protection code.

Users with  access to  local terminals who  sometimes need to  log in
remotely can set a password (with %) for their own PPNs; remote users
who want to  establish their own file directories  should communicate
with  Lester Earnest  (type MAIL  LES).  Sometimes  you may  find the
system is in maintenance mode, which means that the monitor  is being
debugged and the system is not available  for normal use.  If you try
to  log in  at  such a  time you  will be  asked for  the maintenance
password.

The further  details of  LOGIN's operation are  controlled by  a file
named OPTION.TXT which you may  have in your directory.  If  there is
one, it is searched for a line of the form

LOGIN:opt1,opt2,opt3;comments

where opt1...opt3 are the desired options.  Spaces may be used in the
obvious places.   Only the first  six letters of  an option  name are
read.  Upper or  lower case is ok.   Several other programs  use this
OPTION.TXT  file,  looking for  their  own option  lines.   The LOGIN
options are as follows:

  ME       Tells you your fortune.
  MESSAG   Types your mail without asking; see below.
  LOGRUN   Runs the LOGRUN program, which executes monitor commands
           from a LOGRUN entry in OPTION.TXT; see below for details.
  INIT	   Runs the file INIT.DMP from your area after you have logged in.
	   This is useful for having various personal things happen each
	   time you log in.  LOGRUN takes precendence over this option.
  WHO      Starts a WHO line automatically if you are at a display
           terminal, as if you had typed ESC W.
  UNHIDE   Makes your Data Disc channel public, like BREAK H.
  FULL     If you are at a Teletype, sets the full character set mode
           switch.  Equivalent to TTY FULL.
  TABS     If you are at a Teletype, clears the tab expand bit; tabs
           will not be converted to spaces on output.  Like TTY TABS.
  FILL     If you are at a Teletype, sets the fill switch to insert
           extra carriage returns on output to give the carriage time
           to get all the way back.  Like TTY FILL.
  DIGEST   Tells you if there is a new Associated Press news digest
           that came in after the last time you logged in and asks
           you if it should type it out.
  PORNO    Try it and see.  Doesn't work if you also have LOGRUN or INIT.
  NOMAIL   Avoids being asked questions about message files.  This is
           for people who like to type ahead while LOGIN is running.
           The exact effect depends on what other options are used;
           see below.
  AUDIO=n  Selects audio switch input channel n to your speaker if
           you are at a display terminal.  "n" is an octal number.
           "AUDIO=-n" inhibits telephone paging interrupts,
           like BREAK n U.

If there is  a message addressed to  your programmer name or  to your
PPN, LOGIN normally types

THERE'S A NOTE FOR prg                  (or prjprg)
READ IT NOW?

If you type Y, the message file is printed, and you are asked  if you
want to delete it.  (You can  also type R, which will treat  the mail
like a system  message file, i.e.,  LOGIN doesn't type  header lines,
and if you used a slash  in the command it only types  messages which
came since you last logged in.   In this case it does not ask  if you
want to delete the file.)  Note: Mail is normally sent  to programmer
names,  not  PPNs.   Some  people  send  PPN  mail  to  themselves as
reminders.

If you have the MESSAG option but not the NOMAIL option, then mail is
always typed out without asking  first.  If you have both  MESSAG and
NOMAIL, the mail is typed but you are not given the chance  to delete
it.  If you  have NOMAIL alone, you  get the THERE'S A  NOTE...  line
but  not  the mail itself.   (See RCV.BH[UP,DOC] for  another  way to
process your mail.)

If you have DIGEST and NOMAIL, you are notified of a new A.P.  digest
but it is not typed out.  (RCV will also do this for you.) It is also
possible to get automatic  notification of incoming A.P.   stories on
particular topics  from the APE  program; these messages  are treated
like programmer mail with respect to MESSAG and NOMAIL.

The LOGRUN program looks for a line in your OPTION.TXT  file starting
with LOGRUN:.  It then takes that line, and all following lines until
a semicolon is seen, and makes them be executed as if you  typed them
in.  (The semicolon is required.)